Virtual faceted hard media imaging

ABSTRACT

A tilt sensitive virtual marking implement is used to render an impression on an electronic presentation device. Further, a bearing measurement and/or a barrel rotation measurement of the virtual marking implement may be made with respect to the surface. The barrel rotation, tilt, and/or bearing are then used to vary geometry of an impression profile associated with a faceted physical marking implement as well as an intensity of the rendering. A user may actively vary the impression profile while he or she produces strokes of the virtual marking implement across the surface without changing the faceted physical marking implement selection or switching to a different virtual marking implement so that a corresponding impression profile mimics an impression of a facet on the faceted physical marking implement.

CROSS REFERENCE

This application claims the benefit of U.S. Provisional Application No. 61/145,470, entitled “Virtual Hard Media Imaging,” filed Jan. 16, 2009; and is related to U.S. Nonprovisional application Ser. No. 12/464,943, entitled “Virtual Hard Media Imaging” filed May 13, 2009 and U.S. Nonprovisional application Ser. No. ______, entitled “Temporal Hard Media Imaging” filed Jan. 8, 2010; all of which are specifically incorporated by reference for all they disclose and teach.

BACKGROUND

Various software and hardware tools provide users the ability to create computer rendered images using techniques that replicate physical techniques of creating physical images. These software tools include virtual marking implements that model tip geometries associated with various physical marking implements (e.g. pencils, felt pens, crayons, markers, chalk, erasers, charcoal, pastels, colored pencils, scraperboard tools (i.e. knifes, cutters, gauges), conté crayons, and silverpoint). Further, these hardware tools include an electronic stylus combined with an electronic tablet that can approximate the physical feel of the various marking implements and enable the user to emulate movements of a physical marking implement on a surface (e.g. paper, canvas, whiteboard, and chalkboard).

In order to change the tip geometry, the user is typically required to select a different virtual marking implement or modify the tip geometry of the selected virtual marking implement within the software tools. However, in other implementations, the user physically utilizes different electronic styluses that correspond to different tip geometries.

Other implementations have used angle, pressure, tilt, velocity, and other motions of the electronic stylus to vary the size and/or overall opacity of an impression profile associated with the selected physical marking implement. However, past software tools do not vary the geometry and/or intensity of the impression profile (e.g. intensity distribution) based on an angle of the electronic stylus applied to the electronic tablet to model a physical marking implement oriented at the angle.

SUMMARY

The presently disclosed technology teaches a virtual marking implement (e.g. an electronic stylus) with an accelerometer or other way of determining a tilt angle of the virtual marking implement with respect to a surface. Further, the presently disclosed technology teaches determining a bearing of the virtual marking implement with respect to the surface. The angle and bearing are then used to vary geometry of an impression profile associated with a selected faceted physical marking implement as well as the intensity of a rendering on an electronic presentation device.

In a further implementation of the presently disclosed technology, barrel rotation of the virtual marking implement is also determined and used to vary geometry of the impression profile associated with the selected faceted physical marking implement as well as the intensity of the rendering on the electronic presentation device.

This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. Other features, details, utilities, and advantages of the claimed subject matter will be apparent from the following more particular written Detailed Description of various implementations and implementations as further illustrated in the accompanying drawings and defined in the appended claims.

BRIEF DESCRIPTIONS OF THE DRAWINGS

The presently disclosed technology is best understood from the following Detailed Description describing various implementations read in connection with the accompanying drawings.

FIG. 1A shows an example faceted conical tip of a physical marking implement oriented vertically with respect to a horizontal tablet surface and a corresponding impression profile on the tablet surface.

FIG. 1B shows an example faceted conical tip of a physical marking implement oriented at 40 degrees from vertical with respect to a horizontal tablet surface and a corresponding impression profile on the tablet surface.

FIG. 1C shows an example faceted conical tip of a physical marking implement oriented at 60 degrees from vertical with respect to a horizontal tablet surface and a corresponding impression profile on the tablet surface.

FIG. 2A shows an example faceted flat tip of a physical marking implement oriented vertically with respect to a horizontal tablet surface and a corresponding impression profile on the tablet surface.

FIG. 2B shows an example faceted flat tip of a physical marking implement oriented at 40 degrees from vertical with respect to a horizontal tablet surface and a corresponding impression profile on the tablet surface.

FIG. 2C shows an example faceted flat tip of a physical marking implement oriented at 60 degrees from vertical with respect to a horizontal tablet surface and a corresponding impression profile on the tablet surface.

FIG. 3A shows an example faceted round tip of a physical marking implement oriented vertically with respect to a horizontal tablet surface and a corresponding impression profile on the tablet surface.

FIG. 3B shows an example faceted round tip of a physical marking implement oriented 45 degrees from vertical with respect to a horizontal tablet surface and a corresponding impression profile on the tablet surface.

FIG. 3C shows an example faceted round tip of a physical marking implement oriented 60 degrees from vertical with respect to a horizontal tablet surface and a corresponding impression profile on the tablet surface.

FIG. 4A is a plan view of an example virtual marking system with a virtual tablet and a virtual marking implement with a point of contact position measured in an x-direction and a y-direction.

FIG. 4B is an elevation view of the example virtual marking system of FIG. 4A illustrating a tilt of the virtual marking implement in the x-direction.

FIG. 4C is an elevation view of the example virtual marking system of FIG. 4A illustrating a tilt of the virtual marking implement in the y-direction.

FIG. 5A is an elevation view of an example faceted conical tip of a physical marking implement oriented vertically, at 30 degrees from vertical, and at 60 degrees from vertical, successively.

FIG. 5B is an example graph illustrating relationships between tilt angle and scale factor of a corresponding bitmap of the faceted conical tip of FIG. 5A.

FIG. 5C is an example graph illustrating relationships between tilt angle and offset of a center of intensity of the faceted conical tip of FIG. 5A.

FIG. 6A is an elevation view of an example faceted flat tip of a physical marking implement oriented vertically, at 30 degrees from vertical, and at 60 degrees from vertical, successively.

FIG. 6B is an example graph illustrating relationships between tilt angle and scale factor of a corresponding bitmap of the faceted flat tip of FIG. 6A.

FIG. 6C is an example graph illustrating relationships between tilt angle and offset of a center of intensity of the faceted flat tip of FIG. 6A.

FIG. 7A is an elevation view of an example faceted round tip of a physical marking implement oriented vertically, at 45 degrees from vertical, and at 90 degrees from vertical, successively.

FIG. 7B is an example graph illustrating relationships between tilt angle and scale factor of a corresponding bitmap of the faceted round tip of FIG. 7A.

FIG. 7C is an example graph illustrating relationships between tilt angle and offset of a center of intensity of the faceted round tip of FIG. 7A.

FIG. 8A is an elevation view of an example faceted conical tip of a tilted physical marking implement with −15 degrees, 0 degrees, and 15 degrees of barrel rotation with respect to a marking surface, successively.

FIG. 8B is an example graph illustrating relationships between barrel rotation and scale factor of a corresponding bitmap of the faceted conical tip of FIG. 8A.

FIG. 8C is an example graph illustrating relationships between barrel rotation and offset of a center of intensity of a corresponding bitmap of the faceted conical tip of FIG. 8A.

FIG. 9A shows an example faceted conical tip of a physical marking implement oriented vertically with respect to a horizontal tablet surface and a corresponding bitmap.

FIG. 9B shows an example faceted conical tip of a physical marking implement oriented at 40 degrees from vertical with respect to a horizontal tablet surface and a corresponding bitmap.

FIG. 9C shows an example faceted conical tip of a physical marking implement oriented at 60 degrees from vertical with respect to a horizontal tablet surface and a corresponding bitmap.

FIG. 10 shows an example look-up table for impression profiles indexed by tilt, bearing, barrel rotation, type of physical marking implement, and facet shape.

FIG. 11 is a flow chart illustrating an example process for creating impression bitmaps based on impression profiles defined by tilt, bearing, and barrel rotation of a selected faceted physical marking implement.

FIG. 12 is a flow chart illustrating an example process for rendering an impression profile based on tilt, bearing, and barrel rotation of a selected faceted physical marking implement.

FIG. 13 illustrates an example computing system that can be used to implement the described technology.

DETAILED DESCRIPTIONS

Current electronic styluses fail to adequately model the effect of altering an angle of the electronic stylus with respect to a tablet on an intensity distribution of a selected faceted physical marking implement. The presently disclosed technology, however, teaches a virtual marking implement or a tilt sensitive input device (e.g. an electronic stylus) configured to determine a tilt angle and/or a bearing of the virtual marking implement when applied to a tablet surface (e.g. an electronic tablet). The virtual marking implement or tilt sensitive input device, for example, may comprise an accelerometer or other sensor for determining the tilt angle and/or bearing of the virtual marking implement. The angle and bearing are then used to vary a geometry of an impression profile associated with the selected faceted physical marking implement as well as the intensity distribution of a rendering on an electronic presentation device.

In a further implementation, the presently disclosed technology teaches determining a barrel rotation of the virtual marking implement with respect to the tablet surface. The barrel rotation is then used to vary the geometry of the impression profile associated with the selected faceted physical marking implement as well as the intensity distribution of the rendering on the electronic presentation device. Barrel rotation is especially applicable when the physical marking implement possesses one or more facets (i.e., the physical marking implement is not symmetrical about a central axis). Examples of potentially faceted physical marking implements include pencils, chiseled markers, and chalk.

In a further implementation, an accelerometer based virtual marking implement that does not utilize a tablet surface or other surface (e.g. wiimote for Nintendo Wii®) may be used to model the effect of altering an angle, barrel rotation, and/or bearing of the virtual marking implement on an intensity distribution of a selected faceted physical marking implement. In another implementation, a haptic device (e.g. a virtual marking implement connected to an arm that provides a user force, vibration, and/or motion feedback) may be used to model the effect of altering an angle, barrel rotation, and/or bearing of the haptic device on an intensity distribution of a selected faceted physical marking implement.

As a result, a user may actively vary the impression profile while he or she produces strokes of the virtual marking implement across the tablet surface without the need to change the faceted physical marking implement selection or switch to a different virtual marking implement. Faceted physical marking implements are described below in varying levels of detail and include, but are not limited to, chalk, markers, pencils, charcoal, erasers, crayons, pastels, felt pens, colored pencils, scraperboard tools (i.e. knifes, cutters, gauges), conté crayons, silverpoint, and any solid marking implement that doesn't have hairs (i.e. non-brushes) and may possess one or more facets.

When creating a rendering on a virtual canvas using the virtual marking implement and the tablet surface, a user may wish to vary the tip geometry of the virtual marking implement so that a corresponding impression profile mimics an impression of a corresponding faceted physical marking implement at a corresponding orientation. The user may tilt and/or rotate the barrel of the virtual marking implement with respect to the tablet surface at a variety of angles to achieve a desired impression. For example, FIGS. 1A-1C (described in detail below) illustrate three example tilt angles (0°, 40°, and 60° with respect to a vertical axis) of a virtual marking implement 104 and three corresponding impression profiles 112, 116, 120 that are detail plan views of contact areas 128 (i.e. areas where conical tip 140 of the virtual marking implement 104 is in contact with the tablet surface 108). Additionally, FIG. 8A (described in detail below) illustrates three example barrel rotation angles (−15°, 0°, and 15°) of a physical marking implement 840.

In some implementations, the tilt angle of the virtual marking implement 104 equals the tilt angle of a corresponding faceted physical marking implement 124. However, in the implementations shown in FIGS. 1A-1C, the corresponding faceted physical marking implement 124 has a tilt angle that exceeds the tilt angle of the virtual marking implement 104. In FIG. 1A, the virtual marking implement 104 has zero tilt angle and mimics a faceted physical marking implement 124 also with zero tilt angle. In FIG. 1B, however, the virtual marking implement 104 has a 30 degree tilt angle, while the corresponding faceted physical marking implement 124 has a 40 degree tilt angle. Further, in FIG. 1C, the virtual marking implement 104 has a 45 degree tilt angle, while the corresponding faceted physical marking implement 124 has an 60 degree tilt angle. Barrel rotation of the faceted physical marking implement 124 may similarly exceed a tilt angle of the virtual marking implement 104.

This enables the user to achieve a wide range of impression profiles even when the ability to detect tilt angles of the virtual marking implement 104 is limited. Further, the user may want to model an impression profile of the faceted physical marking implement 124 without having to tilt and/or rotate the barrel of the virtual marking implement 104 as much as would be required with the faceted physical marking implement 124. In another implementation, once the tilt angle and/or barrel rotation angle of the virtual marking implement 104 reaches a limit of tilt angle detection, a maximum tilt angle impression profile may be selected (e.g., an 80° to 90° tilt angle).

Conversely, the user may wish the tilt angle and/or barrel rotation angle of the virtual marking implement 104 to exceed the corresponding tilt angle of the faceted physical marking implement 124. The user may desire this option to improve his or her accuracy in selecting a desired impression profile based on tilt angle and/or barrel rotation of the virtual marking implement 104. More specifically, in this implementation, greater hand movements of the virtual marking implement 104 mimic smaller hand movements of a corresponding faceted physical marking implement 124.

In other implementations, the impression profile may change at user perceptible tilt or barrel rotation angle steps (e.g., an impression profile change for every 5 degrees of tilt). In another implementation, the tilt or barrel rotation angle steps may be so small that the impression profile may appear to change uniformly (i.e. imperceptible tilt angle steps).

FIG. 1A shows an example faceted conical tip 140 of a physical marking implement 124 oriented vertically (z-direction) with respect to a horizontal (x, y directions) tablet surface 108 and a corresponding impression profile 112 on the tablet surface 108. When a virtual marking implement 104 has zero tilt with respect to vertical, as in FIG. 1A, the resulting impression profile 112 is oblong in the y-direction with an area of greater intensity 132 in the center 184 of the impression profile 112 and a fading intensity with distance from the center 184 of the impression profile 112 to an outer edge 186 of the impression profile 112.

This impression profile 112 is intended to model a contact area between a lower edge 188 of the faceted conical tip 140 of the physical marking implement 124 (e.g., a pencil) and a marking surface where a resulting mark is strongest where the pressure is the greatest. Here the pressure is the greatest at the center 184 of the impression profile 112 along the lower edge 188 contacting the marking surface and the intensity quickly fades to zero as the pressure fades to zero away from the center of pressure. The intensity fades uniformly and rapidly from the center 184 to the outer edge 186 in a direction along the marking surface generally orthogonal to the lower edge in contact with the marking surface (x-direction). In the y-direction, the intensity remains fairly constant over the length of the lower edge 188 in contact with the marking surface and rapidly fades to zero near the outer edge 186. Further, the intensity over the length over the lower edge 188 may be greatest at the center 184 due to a slight curvature of the lower edge 188 away from the marking surface.

FIG. 1B shows an example faceted conical tip 140 of a physical marking implement 124 oriented at 40 degrees from vertical (z-direction) with respect to a horizontal (x, y directions) tablet surface 108 and a corresponding impression profile 116 on the tablet surface 108. The virtual marking implement 104 is tilted 30 degrees from vertical to model a faceted surface of the conical tip 140 in contact with a marking surface (e.g., at 40 degrees from vertical as shown in FIG. 1B). The resulting impression profile 116 is oblong in a direction of tilt (x-direction) with an area of greater intensity 132 becoming offset from the center 184 of the impression profile 116 away from the direction of tilt (referred to herein as intensity offset). The impression profile 116 remains symmetrical about the x-axis

This impression profile 116 is intended to model a contact area between a faceted surface 190 of the conical tip 140 of the physical marking implement 124 (e.g., a pencil) and a marking surface where the mark is strongest where the pressure is the greatest. Similar to impression profile 112, impression profile 116 fades in intensity with distance from the area of greater intensity 132 of the impression profile 116 to an outer edge 186 of the impression profile 116. However, since impression profile 116 is oblong and the area of greater intensity 132 has been offset away from the center 184 (i.e., intensity offset), the fade in intensity to the outer edge 186 of the impression profile 116 is more gradual in the direction of tilt (positive x-direction) and more rapid in a direction away from the tilt (negative x-direction). Further, while the center of intensity 132 remains oblong in the y-direction due to greater pressure between the faceted surface 190 and the marking surface near the lower edge 188, the center of intensity 132 in FIG. 1B is broader and less defined than the center of intensity in FIG. 1A due to the faceted surface 190 being in contact with the marking surface and distributing the pressure over a wider area.

FIG. 1C shows an example faceted conical tip 140 of a physical marking implement 124 oriented at 60 degrees from vertical (z-direction) with respect to a horizontal (x.,y directions) tablet surface 108 and a corresponding impression profile 120 on the tablet surface 108. The virtual marking implement 104 is tilted 45 degrees from vertical to model an upper edge 192 of the conical tip 140 in contact with a marking surface (e.g., at 40 degrees from vertical as shown in FIG. 1C). The resulting impression profile 120 is oblong in the y-direction with an area of greater intensity 132 in the center 184 of the impression profile 120 and a fading intensity with distance from the center 184 of the impression profile 120 to an outer edge 186 of the impression profile 120.

This impression profile 120 is intended to model a contact area between the upper edge 192 of the faceted conical tip 140 of the physical marking implement 124 (e.g., a pencil) and a marking surface where the resulting mark is strongest where the pressure is the greatest. Here the pressure is the greatest at a center 184 of the impression profile 120 along the upper edge 192 contacting the marking surface and the intensity quickly fades to zero as the pressure fades to zero away from the center 184 of pressure. The intensity fades uniformly and rapidly from the center 184 to the outer edge 186 in a direction along the marking surface generally orthogonal to the upper edge in contact with the marking surface (x-direction). In the y-direction, the intensity remains fairly constant over the length of the upper edge 192 in contact with the marking surface and rapidly fades to zero near the outer edge 186. Further, the intensity over the length over the upper edge 192 may be greatest at the center 184 due to a slight curvature of the upper edge 192 away from the marking surface. As compared to FIG. 1B, the center of intensity 132 has moved back to the center 184 of the impression profile 120 (i.e., impression profile 120 has no intensity offset). Also, the impression profile 120 of FIG. 1C is illustrated larger than the impression profile 212 of FIG. 1A because the lower edge 188 is smaller than the upper edge 192 of the faceted conical tip 140 due to the taper of the faceted conical tip 140.

Impression profiles 112, 116, and 120 are specific to physical marking implements with a faceted conical marking tip 140 such as pencils, markers, crayons, and felt pens. Other impression profiles consistent with other physical marking implements are contemplated herein and discussed below.

FIG. 2A shows an example faceted flat tip 244 of a physical marking implement 224 oriented vertically (z-direction) with respect to a horizontal (x, y directions) tablet surface 208 and a corresponding impression profile 212 on the tablet surface 208. When the virtual marking implement 204 has zero tilt with respect to vertical, as in FIG. 2A, the resulting impression profile 212 is generally circular with a flat side where a modeled lower edge 288 of the faceted surface 290 meets a marking surface. The impression profile 212 has a uniform intensity 232 across the impression profile 212 and an abruptly fading intensity at the edge 286 of the of the impression profile 212.

This impression profile 212 is intended to model a contact area between the faceted flat tip 244 of the physical marking implement 224 (e.g., a pencil eraser) and a marking surface. The mark intensity is fairly uniform across the surface of the faceted flat tip 244 contacting the marking surface (contact area) because the pressure of the implement surface against the marking surface is generally uniform. While the intensity abruptly fades to zero near an edge 286 of the impression profile 212 all around the impression profile 212, the intensity fades less abruptly on the flat side of the impression profile 212 wherein the lower edge 288 is modeled.

When a profile of a faceted tip with a flat side (e.g., faceted flat tip 244) is modeled, a falloff value may be used. The falloff may be used to cut a portion of the circular profile off from an impression profile corresponding to a position and shape of a facet combined with the tilt angle and/or barrel rotation. Referring specifically to FIG. 2A, the falloff cuts the right side of impression profile 212 off at zero degrees of tilt. As the virtual marking implement 204 is tilted, the falloff quickly decreases to zero (i.e., disappears from the impression profile). The falloff may be incorporated into the system as a function and/or curve that varies according to tip profile, tilt angle, facet shape/orientation, and/or barrel rotation. In addition, the falloff may be curved or angular depending on the tip profile, tilt angle, facet shape/orientation, and/or barrel rotation.

FIG. 2B shows an example faceted flat tip 244 of a physical marking implement 224 oriented at 40 degrees from vertical (z-direction) with respect to a horizontal (x, y directions) tablet surface 208 and a corresponding impression profile 216 on the tablet surface 208. When the virtual marking implement 204 has some tilt (e.g., 30 degrees from vertical as shown in FIG. 2B), the resulting impression profile 216 becomes oblong in the y-direction with an area of greater intensity 232 at the center 284 of the impression profile 216 along a lower edge 288 of the faceted surface 290. The impression profile 216 remains symmetrical about axes parallel to the tablet surface 208 oriented in the direction of the tilt of the virtual marking implement 204 and perpendicular to the direction of tilt (x, y axes). Impression profile 216 fades in intensity with distance from the center 284 of the impression profile 216 to an outer edge 286 of the impression profile 216.

This impression profile 216 is intended to model a contact area between the lower edge 288 of the faceted flat tip 244 of the physical marking implement 224 (e.g., a pencil eraser) and a marking surface where the mark is strongest where the pressure is the greatest. Here the pressure is the greatest at a center 284 of the impression profile 216 along the lower edge 288 contacting the marking surface and the intensity quickly fades to zero as the pressure fades to zero away from the center 284 of pressure. The intensity fades uniformly and rapidly from the center 284 to the outer edge 286 in a direction along the marking surface generally orthogonal to the lower edge 288 in contact with the marking surface (x-direction). In the y-direction, the intensity fades uniformly and rapidly from the center 284 to the outer edge 286 over the length of the lower edge 288 in contact with the marking surface due to a slight curvature of the lower edge 288 away from the marking surface. Impression profile 216 does not include a falloff because it models lower edge 288 rather than faceted surface 290.

FIG. 2C shows an example faceted flat tip 244 of a physical marking implement 224 oriented at 60 degrees from vertical (z-direction) with respect to a horizontal (x, y directions) tablet surface 208 and a corresponding impression profile 220 on the tablet surface 208. The virtual marking implement 204 is tilted 45 degrees from vertical to model a faceted surface 290 of the flat tip 244 in contact with a marking surface (e.g., at 60 degrees from vertical as shown in FIG. 2C). The resulting impression profile 220 resembles a quadrilateral and has a uniform intensity. The impression profile 220 remains symmetrical about an axis parallel to the tablet surface 208 oriented in the direction of the tilt (x-axis) of the virtual marking implement 204. The impression profile 220 also has a uniform intensity across the impression profile 220 and an abruptly fading intensity at the edge 286 of the of the impression profile 220.

This impression profile 220 is intended to model a contact area between the faceted surface 290 of the faceted flat tip 244 of the physical marking implement 224 (e.g., a pencil eraser) in contact with a marking surface. The mark intensity is fairly uniform across the faceted surface 290 contacting the marking surface (contact area) because the pressure of the faceted surface 290 against the marking surface is generally uniform. While the intensity abruptly fades to zero near an edge 286 of the impression profile 220 all around the impression profile 220, the intensity fades less abruptly on the flat side of the impression profile 220 wherein the lower edge 288 is modeled. More specifically, the impression profile 220 is an ellipse stretched along the x-direction with falloffs on the left and right side of the impression profile 220. The falloffs correspond to relatively flat sides of the impression profile 220 (i.e., lower edge 288 and upper edge 289). As the virtual marking implement 204 is tilted onto either the lower edge 288 or upper edge 289, the falloff quickly decreases to zero (i.e., disappears from the impression profile). The falloff may be incorporated into the system as a function and/or curve that varies according to tip profile, tilt angle, facet shape/orientation, and/or barrel rotation.

Impression profiles 212, 216, and 220 are specific to physical marking implements with a faceted flat marking end 244 and a circular cross section such as erasers. Other impression profiles consistent with other physical marking implements are contemplated and discussed herein.

FIG. 3A shows an example faceted round tip 348 of a physical marking implement 324 oriented vertically (z-direction) with respect to a horizontal (x, y directions) tablet surface 308 and a corresponding impression profile 312 on the tablet surface 308. When the virtual marking implement 304 has zero tilt with respect to vertical, as in FIG. 3A, the resulting impression profile 312 is generally circular with a flat side where a modeled lower edge 388 of the faceted surface 390 meets a marking surface. The impression profile 312 also has an area of greater intensity 332 at the center 384 of the impression profile 312 and a gradually fading intensity with distance from the center 384 of the impression profile 312 to an outer edge 386 of the impression profile 312.

This impression profile 312 is intended to model a contact area between the lower edge 388 of the faceted surface 390 of the faceted round tip 348 of a physical marking implement 324 (e.g., a rounded piece of chalk) and a marking surface. The resulting mark is the strongest at a center of a contact area of the physical marking implement 324 and the intensity quickly fades to zero away from the center of the point of contact. Further, the resulting mark has a flat side that corresponds to the lower edge 388 of the faceted surface 390 of the physical marking implement 324. The fading of intensity parallels the reduction of pressure away from the center of the contact area for the rounded physical marking implement tip 348 against the marking surface.

Similar to faceted tip 244 of FIG. 2, when a profile of a round tip with a flat side (e.g., round flat tip 348) is modeled, a falloff value may be used. The falloff may be used to cut a portion of the circular profile off from an impression profile corresponding to a position and shape of a facet combined with the tilt angle and/or barrel rotation. Referring specifically to FIG. 3A, the falloff cuts the right side of impression profile 312 off at zero degrees of tilt. As the virtual marking implement 204 is tilted, the falloff gradually decreases to zero (i.e., disappears from the impression profile) as faceted surface 390 comes in contact with the marking surface. The falloff may be incorporated into the system as a function and/or curve that varies according to tip profile, tilt angle, facet shape/orientation, and/or barrel rotation. In addition, the falloff may be curved or angular depending on the tip profile, tilt angle, facet shape/orientation, and/or barrel rotation.

FIG. 3B shows an example faceted round tip 348 of a physical marking implement 324 oriented 45 degrees from vertical (z-direction) with respect to a horizontal (x, y directions) tablet surface 308 and a corresponding impression profile 316 on the tablet surface 308. The virtual marking implement 304 is tilted 30 degrees from vertical to model a faceted surface 390 of the round tip 348 in contact with a marking surface (e.g., at 45 degrees from vertical as shown in FIG. 3B). The resulting impression profile 316 is generally circular and fairly uniform with a quickly fading intensity close to an outer edge 386 of the impression profile 316.

This impression profile 316 is intended to model contact between the faceted surface 390 of the faceted round tip 348 of the physical marking implement 324 (e.g., a rounded piece of chalk) and a marking surface. The resulting mark is fairly uniform with the intensity quickly fading to zero away from the center of the faceted surface 390. The fading of intensity parallels the reduction of pressure away from the center of the contact area of the faceted surface 390 of the rounded physical marking implement tip 348 against the marking surface. Impression profile 316 does not include a falloff because it models a generally circular (or elliptical) faceted surface 390.

FIG. 3C shows an example faceted round tip 348 of a physical marking implement 324 oriented 60 degrees from vertical (z-direction) with respect to a horizontal (x, y directions) tablet surface 308 and a corresponding impression profile 320 on the tablet surface 308. The virtual marking implement 304 is tilted 40 degrees to model an upper edge 392 of the round tip 348 in contact with a marking surface (e.g., at 60 degrees as shown in FIG. 3C). The resulting impression profile 320 is oblong in the y-direction with an area of greater intensity 332 in the center 384 of the impression profile 320 and a fading intensity with distance from the center of the impression profile 320 to an outer edge 386 of the impression profile 320. The impression profile 320 remains symmetrical about axes parallel to the tablet surface 308 oriented in the direction of the tilt of the virtual marking implement 204 and perpendicular to the direction of tilt (x, y axes).

This impression profile 320 is intended to model a contact area between the upper edge 392 of the faceted round tip 348 of the physical marking implement 324 (e.g., a rounded piece of chalk) and a marking surface where the mark is strongest where the pressure is the greatest. Here the pressure is the greatest at a center 384 of the impression profile 320 along the upper edge 392 contacting the marking surface and the intensity quickly fades to zero as the pressure fades to zero away from the center 384 of pressure. The intensity fades uniformly and rapidly from the center 384 to the outer edge 386 in a direction along the marking surface generally orthogonal to the upper edge 392 in contact with the marking surface (x-direction). In the y-direction, the intensity fades uniformly and rapidly from the center 384 to the outer edge 386 over the length of the upper edge 392 in contact with the marking surface due to a slight curvature of the upper edge 392 away from the marking surface. Impression profile 320 does not include a falloff because it models the upper edge 392 of the faceted surface 390.

Impression profiles 312, 316, and 320 are specific to physical marking implements with a faceted round marking end 348 such as rounded chalk. Other impression profiles consistent with other physical marking implements are contemplated and discussed herein.

Referring to FIGS. 4A-AC, a user may utilize an electronic tablet 436 and a virtual marking implement 424 to input changes in tilt bearing, and/or barrel rotation. The user orients the virtual marking implement 424 at the desired tilt in x and y directions and contacts the tablet surface 408 at a contact area 428. The user may also orient the virtual marking implement 424 at a desired barrel rotation.

In one implementation, virtual marking implement 424 may measure tilt angle, tilt direction, and/or barrel rotation directly and send that information to a computer. In other implementations, the computer may collect various position data from the virtual marking implement 424 and calculate the tilt and/or barrel rotation of the virtual marking implement 424 based on the collected position data. Further, the x-direction tilt and y-direction tilt may be collected as a tilt angle and directional bearing of the tilt. Alternatively, the x-direction tilt and y-direction may be collected directly and subsequently converted to a tilt angle and directional bearing of the tilt.

In still further implementations, tilt angle, tilt direction, and/or barrel rotation are determined when the virtual marking implement 424 contacts or comes in close contact with the electronic tablet 436. In other implementations, the computer may monitor the tilt and/or position data sent from the virtual marking implement 424 so long as the virtual marking implement 424 is within range of the computer. Further, the virtual marking implement 424 may utilize accelerometers to determine tilt angle, however, other means for measuring and/or calculating tilt angle, tilt direction, and/or barrel rotation are contemplated.

FIG. 4A is a plan view of an example virtual marking system 400 with a virtual tablet 436 and a virtual marking implement 424 with a contact position 428 defined by an x-coordinate and a y-coordinate. Side edges of the electronic tablet 436 are aligned with coordinate axes x and y. The virtual marking implement 424 is contacting the tablet surface 408 at a contact area 428 defined by distance “a” in the x-direction and distance “b” in the y-direction. Further, the virtual marking implement 424 is shown with a tilt angle in the positive x-direction and negative y-direction.

FIG. 4B is an elevation view of the example virtual marking system 400 of FIG. 4A illustrating a tilt of the virtual marking implement 424 in the x-direction. Coordinate axis x is aligned with a side edge of the electronic tablet 436 and coordinate axis z is perpendicular to the tablet surface 408. The virtual marking implement 424 is contacting the tablet surface 408 at the contact area 428 defined by distance a in the x-direction. Further, the virtual marking implement 424 is shown with a tilt angle in the positive x-direction. Still further, the virtual marking implement 424 may be rotated about its longitudinal axis to effect a barrel rotation of a corresponding faceted physical marking implement.

FIG. 4C is an elevation view of the example virtual marking system 400 of FIG. 4 illustrating a tilt of the virtual marking implement 424 in the y-direction. Coordinate axis y is aligned with another side edge of the electronic tablet 436 and coordinate axis z is perpendicular to the tablet surface 408. The virtual marking implement 424 is contacting the tablet surface 408 at the contact area 428 defined by distance b in the y-direction. Further, the virtual marking implement 424 is shown with a tilt angle in the negative y-direction. Still further, the virtual marking implement 424 may be rotated about its longitudinal axis to effect a barrel rotation of a corresponding faceted physical marking implement.

The generation of an impression profile is based on information received from the user including: selection of a faceted physical marking implement and dimensional information of the faceted physical marking implement. In some implementations, the dimensional information of the faceted physical marking implement is predefined based on common attributes of the selected faceted physical marking implement. In other implementations, the dimensional information of the selected faceted physical marking implement is customizable by the user. For example, the user may specify the faceted physical marking implement's length, diameter, x-sectional profile, and tip angle, facet shape, facet orientation, other properties specific to the faceted physical marking implement that the user wishes to model. Further, the generation of an impression profile is based on information received from the virtual marking implement including tilt angle, tilt bearing (or alternatively x-direction tilt, y-direction tilt), and/or barrel rotation.

In one implementation, impression profiles are created using bitmaps with bits having varying intensities corresponding to a modeled physical mark. A series of bitmaps are rendered on an electronic presentation device in real-time corresponding to dimensional information and physical properties of the faceted physical marking implement as the tilt angle changes. Further, the maximum size of the bitmap is defined by a dimension of the modeled faceted physical marking implement. In one implementation, the dimension is the greater of the length and width of a marking portion of the faceted physical marking implement. Therefore, the height and width of the maximum bitmap are equal to the greater of the length and width of the marking portion of the faceted physical marking implement. However, the actual size of each rendered bitmap varies according to the selected faceted physical marking implement, tilt angle and/or barrel rotation.

Further, in some implementations, the orientation of each rendered bitmap varies according to bearing of the tilt. More specifically, the height and width of each rendered bitmap is defined by the tilt angle and the orientation of height and width with respect to an x-direction and a y-direction is defined by the bearing of the tilt. This calculation is commonly performed by an affine transform.

The affine transform may be used to scale each rendered bitmap in the direction of the tilt and in directions orthogonal to the tilt. More specifically, the affine transform allows the rendered bitmap to be scaled in two separate directions with distinct scaling ratios. In other implementations, the orientation of height and width with respect to the x-direction and the y-direction may also be calculated using formulae specific to the modeled physical marking implement.

In some implementations, the rendered bitmap is smooth (e.g., a marker). In other implementations, the rendered bitmap is grainy (e.g., chalk). The visual appearance of the bitmap on the electronic presentation device mimics the appearance of the selected faceted physical marking implement on a marking surface.

FIG. 5A is an elevation view of an example faceted conical tip 540 of a physical marking implement oriented vertically, at 30 degrees from vertical, and at 60 degrees from vertical, successively. FIG. 5B is an example graph illustrating relationships between tilt angle and scale factor of a corresponding bitmap of a faceted conical tip 540 of FIG. 5A. The size of the corresponding bitmap is expressed as two scale factors of a maximum dimension (discussed above). Referring specifically to the scale factor in the direction of tilt 552 (x-direction of FIGS. 1A-1C), when the physical marking implement is oriented at zero degrees of tilt, the scale factor 552 is very low (here 0.1) because the modeled physical mark is very small. As the physical marking implement is tilted, the scale factor 552 increases, gradually at first because tilt of the conical tip 540 does not initially increase the size of a resulting mark significantly.

As the faceted conical tip 540 approaches 30 degrees, which is the orientation where a facet surface 582 of the modeled faceted conical tip 540 is flat against a marking surface 560, the scale factor 552 rapidly increases to 1. This is because the modeled physical mark transitions from modeling a facet edge against the marking surface 560 to a facet surface 582 against the marking surface 560. When the physical marking implement is tilted further, the scale factor rapidly decreases as the modeled physical mark transitions back from modeling the facet surface 582 to a facet edge. As the faceted conical tip 540 approaches 60 degrees, the scale factor decreases gradually to approximately 0.2.

Referring specifically to the scale factor orthogonal to the direction of tilt 556 (y-direction of FIGS. 1A-1C), when the physical marking implement is oriented at zero degrees of tilt, the scale factor 556 is low, but a little larger than scale factor 552. As the physical marking implement is tilted to 30 degrees, the scale factor 556 increases to about 0.6. A decrease of scale factor 556 from 30 degrees to 60 degrees of tilt is generally shallower than the decrease of scale factor 552 over the same tilt range.

In implementation of FIG. 5A, a maximum width of the facet surface 582 of the physical marking implement defines the maximum bitmap size. In another implementation (e.g., a pencil, felt pen, and marker), a length of the exposed lead or felt 554 along a portion of the conical tip 540 (i.e. a marking portion 564) of the physical marking implement in contact with the marking surface 560 defines the maximum bitmap size. In yet another implementation (e.g., crayons, chalk, charcoal, and pastels), the length of the entire conical tip 558 defines the maximum bitmap size.

FIG. 5C is an example graph illustrating relationships between tilt angle and offset of a center of intensity of the faceted conical tip 540 of FIG. 5A. In the direction of tilt 552 (x-direction of FIGS. 1A-1C), when the physical marking implement is oriented at zero degrees of tilt, the offset is zero because the center of intensity of the modeled physical mark is in the middle of the modeled physical mark. As the physical marking implement is tilted, the center of intensity becomes offset from the center of the modeled physical mark in a direction opposite the direction of tilt up to a maximum where the facet surface 582 of the modeled faceted conical tip 540 is flat against the marking surface 560. As the physical marking implement is tilted is tilted past 30 degrees, the offset progressively decreases back to zero at 60 degrees of tilt. In the implementation shown, there is no offset in the direction orthogonal to the tilt (y-direction of FIGS. 1A-1C) because the center of intensity of the modeled physical mark remains in the middle of the modeled physical mark in the direction orthogonal from the direction of tilt.

FIG. 6A is an elevation view of an example faceted flat tip 644 of a physical marking implement oriented vertically, at 30 degrees from vertical, and at 60 degrees from vertical, successively. FIG. 6B is an example graph illustrating relationships between tilt angle and scale factor of a corresponding bitmap of the faceted flat tip 644 of FIG. 6A. Referring specifically to the scale factor in the direction of tilt 652 (x-direction of FIGS. 2A-2C), when the physical marking implement is oriented at zero degrees of tilt, the scale factor 652 begins at a fairly high (here 0.7) value corresponding to a dimension of a facet surface 682 in contact with the marking surface 660. As the physical marking implement is tilted, initially the scale factor 652 decreases rapidly to 0.1 because only an edge of a facet surface 682 the flat tip 644 is in contact with the marking surface 660. However, as the flat tip 644 approaches 60 degrees, the orientation where the facet surface 682 is flat against the marking surface 660, the scale factor 652 rapidly increases to 1.

Referring specifically to the scale factor orthogonal to the direction of tilt 656 (y-direction of FIGS. 2A-2C), when the physical marking implement is oriented at zero degrees of tilt, the scale factor 656 is fairly high (here 0.9), similar to scale factor 652. As the physical marking implement is tilted, the scale factor 656 decreases only slightly because the edge of the facet surface 682 in contact with the marking surface 660 has a similar orthogonal dimension as the flat tip 644 surface in contact with the marking surface 660 at zero degrees of tilt. As the tilt angle approaches 60 degrees, the scale factor 652 increases back to 0.9, because the orthogonal dimension of the facet surface in contact with the marking surface 660 at 60 degrees of tilt is similar to the orthogonal dimension of the flat tip 644 surface in contact with the marking surface 660 at zero degrees of tilt.

In one implementation, the greater of a length and a width of the facet surface 682 of the physical marking implement defines the maximum bitmap size. In another implementation, the greater of a diameter and a length 662 of the marking portion 664 defines the maximum bitmap size. More specifically, in an implementation where the marking portion 664 runs the entire length of the physical marking implement (e.g., a crayon without a label, piece of chalk, piece of charcoal, and pastel)), the greater dimension is the length rather than the diameter of the physical marking implement. In another implementation where the marking portion length 662 is only a portion of the entire length of the physical marking implement (e.g., a pencil eraser and a crayon with a label); the greater dimension may be the diameter rather than the length of the physical marking implement or the greater of a length and a width of the facet surface 682 of the physical marking implement.

FIG. 6C is an example graph illustrating relationships between tilt angle and offset of a center of intensity of the faceted flat tip 644 of FIG. 6A. The offset value for the faceted flat physical marking implement tip 644 is zero in all directions along the marking surface 660 for tilt angles ranging from zero degrees to sixty degrees because the center of intensity of the modeled physical mark remains in the middle of the modeled physical mark for all the shown tilt angles in this implementation.

FIG. 7A is an elevation view of an example faceted round tip 748 of a physical marking implement oriented vertically, at 45 degrees from vertical, and at 90 degrees from vertical, successively. FIG. 7B is an example graph illustrating relationships between tilt angle and scale factor of a corresponding bitmap of the faceted round tip 748 of FIG. 7A. Referring specifically to the scale factor in the direction of tilt 752 (x-direction of FIGS. 3A-3C), when the physical marking implement is oriented at zero degrees of tilt, the scale factor 752 is low (here 0.2) because the modeled physical mark is a point of contact of the faceted round tip 748 of the physical marking implement with a marking surface 860. As the physical marking implement is tilted, initially the scale factor 752 remains the same. However, as the physical marking implement approaches 45 degrees, which is the orientation where a facet surface 782 of the round tip 748 is flat against the marking surface 760, the scale factor 752 rapidly increases to 0.6.

As the physical marking is tilted past 45 degrees, the facet surface 782 is no longer in contact with the marking surface 760, only an edge of the marking surface 760 is in contact with the marking surface 760 As a result, the scale factor 752 decreases to 0.1. When the physical marking implement approaches 90 degrees, which is the orientation where the modeled physical marking implement is flat against the marking surface 760, the scale factor 752 rapidly increases to 1 (assuming the marking portion 764 runs the entire length of the physical marking implement). In other implementations where a marking portion length 766 is only the rounded part of the round tip 748, not the remainder of the length of the physical marking implement, as the physical marking implement approaches 90 degrees, the scale factor 752 rapidly decreases to zero or near zero.

The scale factor 756 orthogonal to the direction of tilt (y-direction of FIGS. 3A-3C) is low (here 0.3) at zero degrees of tilt because the modeled physical mark is a point of contact of the faceted round tip 748 of the physical marking implement with the marking surface 760. As the physical marking implement is tilted, initially the scale factor 756 remains the same. However, as the physical marking implement approaches 45 degrees, which is the orientation where a facet surface 782 of the round tip 748 is flat against the marking surface 760, the scale factor 752 rapidly increases to 0.5. The scale factor 756 orthogonal to the direction of tilt at 45 degrees of tilt is less than the scale factor 752 along the direction of tilt at 45 degrees of tilt because the facet surface 782 of the round tip 748 is flat against the marking surface 760 is oval shaped rather than round. As the physical marking is tilted past 45 degrees, the facet surface 782 is no longer in contact with the marking surface 760. Only an edge of the marking surface 760 is in contact with the marking surface 760. As a result, the scale factor 756 decreases back to 0.3 and stays at 0.3 though 90 degrees of tilt.

In one implementation, the greater of a length and a width of the facet surface 782 of the physical marking implement defines the maximum bitmap size. In another implementation, the dimension of the physical marking implement that defines the maximum bitmap size is the greater of a diameter of the physical marking implement and a length of the marking portion 764 of the physical marking implement. More specifically, in an implementation where the marking portion 764 runs the entire length of the physical marking implement (e.g., a crayon without a label, piece of chalk, piece of charcoal, and pastel)), the greater dimension is the length rather than the diameter of the physical marking implement. In another implementation where the marking portion length 766 is only a portion of the entire length of the physical marking implement (e.g., a pencil eraser and a crayon with a label); the greater dimension may be the diameter rather than the length of the physical marking implement.

FIG. 7C is an example graph illustrating relationships between tilt angle and offset of a center of intensity of the round tip 748 of FIG. 7A. An offset value in all directions along the marking surface 660 is zero for tilt angles ranging from zero degrees to ninety degrees because the center of intensity of the modeled physical mark remains in the middle of the modeled physical mark for all the shown tilt angles in this implementation.

FIG. 8A is an elevation view of an example faceted conical tip 840 of a tilted physical marking implement with −15 degrees, 0 degrees, and 15 degrees of barrel rotation with respect to a marking surface 860, successively. The conical tip 840 with a faceted surface 882 is shown in conjunction with a marking surface 860. The faceted surface 882 is generally on the bottom of the conical tip 840 where the conical tip 840 meets the marking surface 860. For illustration purposes, only scale factor and offset in a direction of tilt of the faceted conical tip is shown in FIG. 8.

FIG. 8B is an example graph illustrating a relationship between barrel rotation and scale factor of a corresponding bitmap of the faceted conical tip 840 of FIG. 8A. When the physical marking implement is oriented at negative fifteen degrees of barrel rotation, only one side of the faceted surface 882 is in contact with the marking surface 860. Therefore, the scale factor is very low (here 0.1). As the barrel of the physical marking implement is rotated to zero degrees in the implementation shown, the scale factor increases rapidly to a maximum (here 1.0) because the entire faceted surface 882 is in contact with the marking surface 860. However, as the barrel rotation approaches fifteen degrees, the scale factor rapidly decreases illustrating that the faceted surface 882 is no longer substantially contacting the marking surface 860. Only one side of the faceted surface 882 is in contact with the marking surface 860. Therefore, the scale factor is once again very low (here 0.1).

FIG. 8C is an example graph illustrating relationships between barrel rotation and offset of a center of intensity of a corresponding bitmap of the faceted conical tip 840 of FIG. 8A. Barrel rotation of the faceted conical tip 840 does not create an offset value. The offset value is zero for all the angles shown because the center of intensity for all barrel rotations is in the center of the modeled physical mark.

FIGS. 8B and 8C correspond specifically to the conical physical marking implement tip 840, which is similar to the faceted conical tip 140 of FIG. 1. However, barrel rotation of other physical marking implement tips (e.g. faceted flat tip 244 of FIG. 2 and faceted round tip 348 of FIG. 3) may similarly be modeled. In another implementation, there are no graphs for the relationship between barrel rotation of a faceted conical tip 840 to bitmap size and offset value. Instead there may be a table of scale factor curves, wherein each scale factor curve corresponds to an amount of barrel rotation. More specifically, at zero degrees of rotation, the scale factor curve may look like FIG. 6B. At +15 degrees of rotation, the scale factor curve may be in the style of FIG. 6B, but different, based on the number and orientation of the facets on the faceted conical tip 664.

FIG. 9A shows an example faceted conical tip 940 of a physical marking implement 924 oriented vertically with respect to a horizontal tablet surface 908 and a corresponding bitmap 970. Bitmap 970 is constrained to a bit number corresponding to a maximum dimension of the modeled physical marking implement 924 (discussed above). The modeled physical marking implement 924 has a faceted conical tip 940, similar to faceted conical tip 140 of FIG. 1. Referencing FIG. 1, the impression 112 corresponding to faceted conical tip 140 is relatively small and oblong in a direction perpendicular to the tilt. As a result, bitmap 970 is similarly small and oblong (e.g., 7 bits by 3 bits).

FIG. 9B shows an example faceted conical tip 940 of a physical marking implement 924 oriented at 40 degrees from vertical with respect to a horizontal tablet surface 908 and a corresponding bitmap 978. Bitmap 978 is constrained to a bit number corresponding to a maximum dimension of the modeled physical marking implement 924 (discussed above). The modeled physical marking implement 924 has a faceted conical tip 940, similar to faceted conical tip 140 of FIG. 1. Referencing FIG. 1, the impression 116 corresponding to faceted conical tip 140 oriented at 40 degrees of tilt is a uniform oval that is oblong in the direction of tilt corresponding to a faceted surface of the modeled physical marking implement 124 contacting the marking surface 108. As a result, bitmap 978 becomes larger and oblong in a direction of tilt when compared to bitmap 970 (e.g., 12 bits by 40 bits).

FIG. 9C shows an example faceted conical tip 940 of a physical marking implement 924 oriented at 60 degrees from vertical with respect to a horizontal tablet surface 908 and a corresponding bitmap 974. Bitmap 974 is constrained to a bit number corresponding to a maximum dimension of the modeled physical marking implement 924 (discussed above). The modeled physical marking implement 924 has a faceted conical tip 940, similar to faceted conical tip 140 of FIG. 1. Referencing FIG. 1, the impression 120 corresponding to faceted conical tip 140 oriented at 60 degrees of tilt is an oval that is oblong in a direction perpendicular to the tilt and is smaller than the impression 116. The impression 120 corresponds to a facet edge of the modeled physical marking implement 124 contacting the marking surface 108. Bitmap 974 becomes smaller and oblong in the direction opposite the tilt when compared to bitmap 978 (e.g., 12 bits by 4 bits).

Cumulatively, a maximum dimension of the bitmaps 970, 978, and 974 of FIGS. 9A, 9B, and 9C is forty bits. In some implementations, the maximum dimension defines the dimension for all bitmaps for the selected physical marking implement 924. Bitmaps may also be generated for tip orientations other than conical tips (e.g., flat tips and round tips). Bitmaps for each tip orientation will depend on the form factor of the impression profile at each tilt angle.

Once a bitmap size is determined, an intensity value is determined for each of the bits in the bitmap. The intensity value for each bit mimics an intensity of the corresponding location in a mark made by a physical marking implement on a marking surface. Bitmap with intensity values approximate the impression profiles discussed above with respect to FIGS. 1A-3C.

FIG. 10 shows an example look-up table 1000 for impression profiles indexed by tilt, bearing, barrel rotation, type of physical marking implement, and facet shape. More specifically, the example look-up table 1000 is for a pencil with a 20 degree chisel facet and shows example impression profiles for the pencil at 0 degrees tilt, 0 degrees bearing, and 0 degrees rotation; 20 degrees tilt, 30 degrees bearing, and 0 degrees rotation; and 40 degrees tilt, 60 degrees bearing, and 0 degrees rotation. The selected tilt, bearing, and tilt combinations shown in look-up table 1000 are examples only. There may be many more combinations of tilt, bearing, rotation, type of physical marking implement, and facet shape/orientation indexed in the look-up table 1000. Further, additional properties may be included in the look-up table 1000. In one implementation, all possible tilt, bearing, and rotation values are tabulated for each physical marking implement and associated facet.

In another implementation, at least one tip geometry for each available physical marking implement oriented at each available tilt angle and bearing is saved in a database associated with a drawing application. Further, multiple tip geometries for each physical marking implement may be stored in the database corresponding to multiple lengths, widths, or other variable properties of the selected physical marking implement. In one implementation, a user selects a physical marking implement in the drawing application. In another implementation, the user modifies default tip geometry, including facets, associated with the selected physical marking implement thereby creating a custom tip geometry. In still other implementations, the user creates a tip geometry from scratch using dimensional and marking characteristics of the physical marking implement that the user wishes to model.

All bitmaps for a selected tip geometry are generated based on the look-up tables. The drawing application monitors a tablet surface for contact by a virtual marking implement. Once the virtual marking implement makes contact with the tablet surface, the computer application reads tilt, bearing (or alternatively tilt in x-direction and y-direction), and rotation information and selects the bitmap that corresponds best to the measured tilt, bearing, and rotation information. The drawing application then adjusts the bitmap and renders the appropriate mark on a presentation device. In one implementation, the drawing application repeatedly monitors the virtual marking implement for tilt, bearing, and rotation information at a high rate and adjusts the rendering as the user changes tilt, bearing, and rotation of the virtual marking implement. This may be done rapidly and/or at a high rate to render the marking for the user in real-time.

In an alternative implementation, the look-up tables may not contain impression profiles for all available tilt, bearing, and rotation angles. The drawing application can calculate in real-time changes in the impression profile based on changes in tilt, bearing, and/or rotation by applying a function that modifies a stored impression profile to the appropriate tilt, bearing, and rotation.

In yet another implementation, the drawing application renders marks on a presentation device without the use of the one or more look-up tables. Here, the drawing application reads tilt, bearing, and rotation information from the virtual marking implement and generates bitmaps in real-time that correspond best to the measured tilt, bearing, and rotation based on a combination of physical marking implement settings, curves, and measurements. The drawing application then adjusts the bitmaps and renders the appropriate impression profiles on the presentation device.

In still another implementation, bitmaps are generated in real-time and stored in a cache. While rendering marks on the presentation device, the drawing application retrieves bitmaps from the cache corresponding to measured tilt and bearing information. If an appropriate bitmap does not exist in the cache for the measured tilt, bearing, and rotation information, the drawing application generates a new bitmap for that combination of tilt, bearing, and rotation and stores the new bitmap in the cache.

FIG. 11 is a flow chart illustrating an example process for creating impression bitmaps based on impression profiles defined by tilt, bearing, and barrel rotation of a selected faceted physical marking implement. In a detection operation 1110, a drawing application detects a profile change event input from the user. The profile change event is any input that results in a modification of the impression profile. For example, the user may create a new tip geometry, select a different physical marking implement, select a facet, or modify the selected physical marking implement. Further, the user may change the orientation of a virtual marking implement resulting in a different tilt, bearing, and/or barrel rotation of the virtual marking implement.

In a first determining operation 1120, the drawing application determines the maximum bitmap size of the selected physical marking implement. In a second determining operation 1130, the drawing application then determines tip geometry based on the selected physical marking implement, selected facet, and/or user created tip geometry. In a retrieving operation 1140, the drawing application uses the selected tip geometry and determined maximum bitmap size to retrieve tip parameter sets that define properties of the selected physical marking implement. These properties include, but are not limited to, scaling factors, intensity curves or functions, and impression profile look-up tables.

In a third determining operation 1150, the drawing application then determines bitmap sizes by applying scale factors based on tilt angle and/or bearing to the maximum bitmap size of the selected physical marking implement. There may be separate scale factors for tilt in the x-direction and the y-direction, or alternatively each scale factor may apply to tilt in both the x-direction and the y-direction. In a computing operation 1160, the drawing application then computes an offset dimension based on the tilt of the virtual marking implement. The offset dimension defines the direction and magnitude of an offset between the center of intensity of each bitmap with respect to the dimensional center of each bitmap. Generally, at zero degrees of tilt, the offset dimension is zero. When using some physical marking implements and/or facets, the offset dimension increases when the virtual marking implement is tilted. When using other physical marking implements and/or facets, the offset dimension remains zero at all tilt measurements.

In a generating operation 1170, an intensity profile is generated based on the tip parameter set, the bitmap size, and the offset dimension. In a creation operation 1180, the intensity profile is applied to the bitmap size to generate a bitmap unique to a specific combination of tip geometry, tilt, bearing, and barrel rotation.

FIG. 12 is a flow chart illustrating an example process for rendering an impression profile based on tilt, bearing, and barrel rotation of a selected faceted physical marking implement. In a creation operation 1210, a set of bitmaps unique to a specific combination of tip geometry, tilt, and bearing are created. See e.g., FIG. 9. In a detection operation 1220, a drawing application detects a marking event input from a user. The marking event is an input that is intended to result in a rendering of an impression profile on an electronic presentation device. For example, the user may contact a surface of an electronic tablet with a virtual marking implement and drag the virtual marking implement across the electronic tablet.

In a reading operation 1230, once the drawing application detects a marking event, the drawing application reads a tilt measurement, a bearing measurement, and/or a barrel rotation measurement from the virtual marking implement. In a selection operation 1240, the drawing application selects a bitmap from the set of bitmaps that best corresponds to the tilt, bearing, and barrel rotation measurements. Finally, in a rendering operation 1250, the drawing application renders the impression profile on the electronic display utilizing the geometry and intensity distribution of the selected bitmap. In another implementation, the creation operation 1210 is performed in real-time by the drawing application based on the reading operation 1230.

FIG. 13 illustrates an example computing system that can be used to implement the described technology. A general purpose computer system 1300 is capable of executing a computer program product to execute a computer process. Data and program files may be input to the computer system 1300, which reads the files and executes the programs therein. Some of the elements of a general purpose computer system 1300 are shown in FIG. 13 wherein a processor 1302 is shown having an input/output (I/O) section 1304, a Central Processing Unit (CPU) 1306, and a memory section 1308. There may be one or more processors 1302, such that the processor 1302 of the computer system 1300 comprises a single central-processing unit 1306, or a plurality of processing units, commonly referred to as a parallel processing environment. The computer system 1300 may be a conventional computer, a distributed computer, or any other type of computer. The described technology is optionally implemented in software devices loaded in memory 1308, stored on a configured DVD/CD-ROM 1310 or storage unit 1312, and/or communicated via a wired or wireless network link 1314 on a carrier signal, thereby transforming the computer system 1300 in FIG. 13 to a special purpose machine for implementing the described operations.

The I/O section 1304 is connected to one or more user-interface devices (e.g., a keyboard 1316 and a display unit 1318), a disk storage unit 1312, and a disk drive unit 1320. Display unit 1318 may be any presentation device adapted to present information to a user. Generally, in contemporary systems, the disk drive unit 1320 is a DVD/CD-ROM drive unit capable of reading the DVD/CD-ROM medium 1310, which typically contains programs and data 1322. Computer program products containing mechanisms to effectuate the systems and methods in accordance with the described technology may reside in the memory section 1304, on a disk storage unit 1312, or on the DVD/CD-ROM medium 1310 of such a system 1300. Alternatively, a disk drive unit 1320 may be replaced or supplemented by a floppy drive unit, a tape drive unit, or other storage medium drive unit. The network adapter 1324 is capable of connecting the computer system to a network via the network link 1314, through which the computer system can receive instructions and data embodied in a carrier wave. Examples of such systems include Intel and PowerPC systems offered by Apple Computer, Inc., personal computers offered by Dell Corporation and by other manufacturers of Intel-compatible personal computers, AMD-based computing systems and other systems running a Windows-based, UNIX-based, or other operating system. It should be understood that computing systems may also embody devices such as Personal Digital Assistants (PDAs), mobile phones, gaming consoles, set top boxes, etc.

When used in a LAN-networking environment, the computer system 1300 is connected (by wired connection or wirelessly) to a local network through the network interface or adapter 1324, which is one type of communications device. When used in a WAN-networking environment, the computer system 1300 typically includes a modem, a network adapter, or any other type of communications device for establishing communications over the wide area network. In a networked environment, program modules depicted relative to the computer system 1300 or portions thereof, may be stored in a remote memory storage device. It is appreciated that the network connections shown are exemplary and other means of and communications devices for establishing a communications link between the computers may be used.

In an example implementation, a drawing module that performs operations described herein may be incorporated as part of the operating system, application programs, or other program modules. Further, a database containing impression profile look-up tables may be stored as program data in memory 1308 or other storage systems, such as disk storage unit 1312 or DVD/CD-ROM medium 1310.

The present specification provides a complete description of the methodologies, systems and/or structures and uses thereof in example implementations of the presently-described technology. Although various implementations of this technology have been described above with a certain degree of particularity, or with reference to one or more individual implementations, those skilled in the art could make numerous alterations to the disclosed implementations without departing from the spirit or scope of the technology hereof. Since many implementations can be made without departing from the spirit and scope of the presently described technology, the appropriate scope resides in the claims hereinafter appended. Other implementations are therefore contemplated. Furthermore, it should be understood that any operations may be performed in any order, unless explicitly claimed otherwise or a specific order is inherently necessitated by the claim language. It is intended that all matter contained in the above description and shown in the accompanying drawings shall be interpreted as illustrative only of particular implementations and are not limiting to the embodiments shown. Changes in detail or structure may be made without departing from the basic elements of the present technology as defined in the following claims. 

1. A method of determining a mark modeling a contact area between a faceted implement surface of an implement and a marking surface, the method comprising: receiving a marking event that specifies a tilt measurement of a tilt sensitive input device; and determining a geometry of the mark and an intensity distribution within the mark based on the tilt measurement, wherein the geometry of the mark and the intensity distribution within the mark are based on an orientation of one or more facets on the implement and variations in pressure between the faceted implement surface and the marking surface over the modeled contact area for the tilt measurement using a processor.
 2. The method of claim 1, wherein the marking event further specifies a bearing measurement of the tilt sensitive input device and at least one of the geometry of the mark and intensity distribution within the mark are further based on the bearing measurement.
 3. The method of claim 1, wherein the marking event further specifies a barrel rotation measurement of the tilt sensitive input device and at least one of the geometry of the mark and intensity distribution within the mark are further based on the barrel rotation measurement.
 4. The method of claim 1, further comprising: selecting a tip geometry corresponding to a physical marking implement with one or more facets, wherein at least one of the geometry of the mark and the intensity distribution of the mark are based on the selected tip geometry.
 5. The method of claim 1, further comprising: mapping the geometry of the mark to an impression bitmap with a bitmap size, wherein the bitmap size is a maximum bitmap size multiplied by a scale factor corresponding to the tilt measurement.
 6. The method of claim 1, wherein the implement surface is customizable by a user.
 7. The method of claim 1, wherein the implement surface is defined by a combination of user defined tip geometry properties.
 8. The method of claim 1, further comprising: presenting the mark via a presentation device.
 9. A system for determining a mark modeling a contact area between a faceted implement surface of an implement and a marking surface, the system comprising: a tilt sensitive input device configured to input a marking event that indicates a tilt measurement of the tilt sensitive input device; and a determining module configured to determine a geometry of the mark and an intensity distribution within the mark based on the tilt measurement, wherein the geometry of the mark and the intensity distribution within the mark are based on an orientation of one or more facets on the implement and variations in pressure between the faceted implement surface and the marking surface over the modeled contact area for the tilt measurement.
 10. The system of claim 9, further comprising: rendering circuitry configured to render the mark on the presentation device.
 11. The system of claim 9, wherein the marking event further specifies a bearing measurement of the tilt sensitive input device and at least one of the geometry of the mark and intensity distribution within the mark are further based on the bearing measurement.
 12. The system of claim 9, wherein the marking event further specifies a barrel rotation measurement of the tilt sensitive input device and at least one of the geometry of the mark and intensity distribution within the mark are further based on the barrel rotation measurement.
 13. The system of claim 9, wherein the tilt sensitive input device is further configured to select a tip geometry corresponding to a physical marking implement with one or more facets, wherein at least one of the geometry of the mark and the intensity distribution of the mark are based on the selected tip geometry.
 14. The system of claim 9, further comprising: a mapping module configured to map the geometry of the mark to an impression bitmap with a bitmap size, wherein the bitmap size is a maximum bitmap size multiplied by a scale factor corresponding to the tilt measurement.
 15. The system of claim 9, wherein the implement surface is customizable by a user.
 16. The system of claim 9, wherein the implement surface is defined by a combination of user defined tip geometry properties.
 17. The system of claim 9, further comprising: a presentation device configured to present the mark.
 18. A method of determining a mark modeling a contact area between a faceted implement surface of an implement and a marking surface, the method comprising: receiving a marking event that specifies a tilt measurement of a tilt sensitive input device; and finding the mark that corresponds to the tilt measurement and an orientation of one or more facets on the implement in a look-up table, wherein a geometry of the mark and an intensity distribution within the mark are based on variations in pressure between the faceted implement surface and the marking surface over the modeled contact area for the tilt measurement.
 19. The method of claim 18, wherein the marking event further specifies a bearing measurement of the tilt sensitive input device and the mark further corresponds to the bearing measurement in the look-up table.
 20. The method of claim 18, wherein the marking event further specifies a barrel rotation measurement of the tilt sensitive input device and the mark further corresponds to the barrel rotation measurement in the look-up table.
 21. The method of claim 18, further comprising: selecting a tip geometry corresponding to a physical marking implement with one or more facets, wherein the mark further corresponds to the selected tip geometry in the look-up table.
 22. The method of claim 18, further comprising: mapping the geometry of the mark to an impression bitmap with a bitmap size, wherein the bitmap size is a maximum bitmap size multiplied by a scale factor corresponding to the tilt measurement.
 23. The method of claim 18, wherein the implement surface is customizable by a user.
 24. The method of claim 18, wherein the implement surface is defined by a combination of user defined tip geometry properties.
 25. The method of claim 18, further comprising: presenting the mark on a presentation device.
 26. One or more computer-readable media storing computer-readable instructions for execution by a processor to perform a method of determining a mark modeling a contact area between a faceted implement surface of a implement and a marking surface comprising: receiving a marking event that specifies a tilt measurement of a tilt sensitive input device; and determining a geometry of the mark and an intensity distribution within the mark based on the tilt measurement, wherein the geometry of the mark and the intensity distribution within the mark are based on an orientation of one or more facets on the implement and variations in pressure between the faceted implement surface and the marking surface over the modeled contact area for the tilt measurement.
 27. The computer-readable media of claim 26, wherein the marking event further specifies a bearing measurement of the tilt sensitive input device and at least one of the geometry of the mark and intensity distribution within the mark are further based on the bearing measurement.
 28. The computer-readable media of claim 26, wherein the marking event further specifies a barrel rotation measurement of the tilt sensitive input device and at least one of the geometry of the mark and intensity distribution within the mark are further based on the barrel rotation measurement.
 29. The computer-readable media of claim 26, wherein the method further comprises: selecting a tip geometry corresponding to a physical marking implement with one or more facets, wherein at least one of the geometry of the mark and the intensity distribution of the mark are based on the selected tip geometry.
 30. One or more computer-readable media storing computer-readable instructions for execution by a processor to perform a method of finding a mark modeling a contact area between a faceted implement surface of an implement and a marking surface comprising: receiving a marking event that specifies a tilt measurement of a tilt sensitive input device; and finding the mark that corresponds to the tilt measurement and an orientation of one or more facets on the implement in a look-up table, wherein a geometry of the mark and an intensity distribution within the mark are based on variations in pressure between the faceted implement surface and the marking surface over the modeled contact area for the tilt measurement.
 31. The computer-readable media of claim 30, wherein the marking event further specifies a bearing measurement of the tilt sensitive input device and the mark further corresponds to the bearing measurement in the look-up table.
 32. The computer-readable media of claim 30, wherein the marking event further specifies a barrel rotation measurement of the tilt sensitive input device and the mark further corresponds to the barrel rotation measurement in the look-up table.
 33. The computer-readable media of claim 30, wherein the method further comprises: selecting a tip geometry corresponding to a physical marking implement with one or more facets, wherein the mark further corresponds to the selected tip geometry in the look-up table. 